home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Turnbull China Bikeride
/
Turnbull China Bikeride - Disc 2.iso
/
STUTTGART
/
FROMUTS
/
LARGER
/
!Larger
/
!Help
< prev
next >
Wrap
Text File
|
1992-01-23
|
18KB
|
452 lines
!Larger Version 1.27 23rd January 1992
=================================================
(c) 1991 Robin Watts
Introduction:
!Larger is a RISC OS Application designed to make life easier when using the
Desktop. It performs several functions at once:
1) It provides a Sticky Backdrop facility, allowing applications, Basic
programs and datafiles to be run, dragged from, or moved by clicking or
dragging icons on the backdrop.
Features include:
* Sprites, and System Variables saved with Backdrop.
* Dragging files onto backdrop allows them to be saved into a
directory within !Larger.
* Shift-Drag conventions supported.
* Automatic Gridlocking.
* Facility to Select directories as CSD when opened from backdrop.
* Press Ctrl-Tab to select Directory under Pointer as CSD, or to set
CSD to parent directory of file in editor under pointer.
* Unique 'Gravity' feature separates Applications and Directories as
specified by user.
* Launch Applications by dragging files onto them.
* Save into directories by dragging files onto them.
* Launch Applications by User-Definable Ctrl Keys.
* !Help Compatible.
* Copy Applications, Files and directories, by dragging from Backdrop.
2) It provides a Virtual Desktop facility, enabling a desktop of almost
infinite size to be used, simply by 'pushing' the edge of the screen with the
pointer. This has uses when using many different applications at once, and
helps prevent cluttering of Screen displays.
3) An Application Manager is provided. On Command, an entire application's
windows can be hidden from view off screen, and brought back at a later
date unchanged. This is intended to help reduce screen clutter.
4) A facility is availiable to save details of the applications running, and
the positions of the windows belonging to these. These can then be reloaded
simply by double clicking on and icon.
Menu Options:
=============
Info => Opens a window containing info on Larger.
Backdrop => Drag Onto This allows the item over which the menu was
opened to have its 'Drag Onto' flag toggled.
=> Open Parent This opens the directory containing the icon over
which the menu was opened.
=> Ctrl Key This allows you to set a Key so that Ctrl and that
Key will 'run' that item.
=> Pre Params This accepts parameters which will be inserted
after the command to be executed, and before the
filename of the file dragged onto the icon. Thus
if 'tar' is sat on the back drop, and a file is
dragged onto it, and the required command is
'tar -xvf <Filename>', then the pre paramater
string should be set to -xvf. This option is only
used if a file is dragged to the icon, and the
drag onto flag is set.
=> Post Params This performs the same operation as Pre Params,
but inserts the parameters after the filename.
The same conditions of use apply.
=> Run With This option allows the user to run an application
with a specific string passed to it. The
application will be invoked with a command string
consisting of:
<Command> <Pre params> <Run With> <Post Params>
This enables applications to be run with (say) a
list of filenames.
=> Remove Item This removes the item from the backdrop.
=> Help This activates the Help file (if any) of the
application.
Desktop => Home This moves the desktop back to its initial
position.
=> Retrieve This pulls all (non-hidden) windows onto the
screen.
=> Cycle This pulls the back window to the front.
Save Room => This saves details of all non-hidden Applications
and their windows to an icon on the backdrop. A
double click on the icon will reload the apps, and
try and re-open the windows in the same places as
before. Larger also saves the titles of the files
(read from the title bar of the windows), and will
reload these into the appropriate windows if it
can.
Config... This Opens the configuration window. This can also
be achieved by clicking on the icon bar icon (if
selected)
Apps... This allows the user to edit !Larger's internal
list of Applications and their positions. This
list is used when restarting applications from
previously saved rooms.
Quit This quits !Larger.
Hot Key Options:
================
Ctrl-Tab: Pressing Ctrl-Tab over a directory window, sets the CSD
(currently selected directory) to this directory. Pressing
Ctrl-Tab, over an application which carries the name of the
file being edited in it's title bar, will set the CSD to be the
directory containing this file.
Shift-Tab: Pressing Shift-Tab over a window, will hide all the windows
belonging to that application off screen, and put an icon on
the backdrop. Double clicking this Icon will cause all the
windows to reappear, in the same positions as before.
Configuration Window:
=====================
This allows fine tuning of the !Larger Application for individual users. The
possible options are listed below:
Auto Load If selected !Larger will automatically load a pre-saved
backdrop from disk when launched.
Organise This option turns the sorting functions of the program on or
off. With this enabled, applications (i.e. All non-directory
objects) and directories, are subjected to the 'gravity' set
below. Thus with application gravity right, and directory
gravity left and organise on, objects on the backdrop will be
neatly separated into the two categories.
Icon+Text This option causes applications on the backdrop to be show as
their sprite, followed by their name.
Icon Only This option causes applications on the backdrop to be show as
their sprite alone, without their name.
Scroll This option turns the Virtual Desktop facility on and off. With
this option set, as the pointer travels beyond the confines of
the screen, it causes the entire screen to move in the opposite
direction, so offering a practically infinite screen area.
With Shift This option works in conjunction with 'Scroll' above. With this
set, the screen will only scroll around the Virtual Desktop, if
Shift is held while the pointer is moved off screen.
Open Filer With this option set, double-clicking a directory from the
backdrop has the effect of opening the filer window on screen.
Set CSD With this option set, double-clicking a directory on the
backdrop has the effect of making it the currently selected
directory.
Icon On Bar This toggles the icon bar icon, on and off.
Large Icon This selects what size of icon will be displayed on the icon
bar, if it is enabled with 'Icon On Bar'
Window Size If selected, this stops windows opening up to vast sizes by
Limit limiting the size of windows to that of screen size.
No Bounds For those die-hard users amoung you, who object to all windows
having the 'No Bounds' bit set. To use the Virtual Desktop,
this must be set. Note that this only affects windows created
after the setting has been changed - Not all existing windows.
Selective If this option is selected, only sprites used in the backdrop
Sprite Save itself are saved. This means that !Larger will start up much
faster, and will take less room to store the sprites. However,
more time will be taken to open directory viewers containing
'unseen' applications as their sprites must be loaded. This is
slow at present as the code to copy sprites to a new area uses
repeated SWI calls, and is hence slow. Also, enough memory in
the RMA must be availiable to hold the sprites used, as they
are copied across just prior to saving. If not, an error is
given.
Follow Caret If this option is selected, and the user moves the caret off
screen, then the whole desktop will scroll to bring the caret
back onto the screen. This enables windows larger than the
screen to be opened (e.g. DTP windows), and scrolled around,
without worrying about losing sight of the caret. This option
will cause problems if the user trys to scroll the desktop
manually, so as to take the Caret off screen, as the machine
promptly scrolls it back.
To Copy !Larger:
================
1) Load up !Larger
2) Turn off Auto-Load
3) Quit !Larger
4) Drag !Larger to new disc
5) Reload Original !Larger
6) Turn Auto-Load back on (if appropriate)
In fact, any files that are saved, by dragging onto the backdrop of !Larger,
are saved within !Larger in a directory called Internal. These can be deleted
if not required. Similarily, saved rooms are kept in a directory called
rooms. These can be deleted. Also the files making up a saved backdrop can be
deleted if not required. Simply delete the files 'Details', 'SysVars' and
'Sprites' (NOT !Sprites).
Public Domain Notice:
=====================
This software is Shareware and may be freely copied, as long as the following
conditions are met:
a) This Notice is distributed unchanged with every copy
b) Any Changes released should first be Mailed to the Author at one of the
addresses given below
c) No charge (excluding possibly a minimal Copying charge) is made for the
software by the distributor.
d) You may use the software for a suitable trial period without registering.
Should you continue to do so after this period, then you must register
with the author by sending £10.00 to the author. In exchange for this, you
will receive free updates to the software as it becomes available. DO NOT
ABUSE THIS SYSTEM!
This software is provided 'as is', with no guarantee of its suitability for
any purpose. I will accept no responsibility for any data lost while using
this program. NO WARRANTY IS GIVEN!
If you do change the code at all, please let me know, as I refuse to try to
support other peoples modifications unless I have been told about them, and
I will probably be interested.
If anyone has any ideas on improvements or new features for !Larger, however
strange they may seem, please get in touch with me, as they will almost
always be useful to someone else. I will try and implement anything (within
reason) that people want.
Things to note:
===============
1) If a file is set to 'Drag onto', and an application 'saves' a file onto
its plinth, the data passed is stored in the file pointed to by
Wimp$Scrap. Then the application is loaded, and Wimp$Scrap is passed to it
as a paramater. The application should then delete Wimp$Scrap. This does
not seem to be supported by any applications I have tried. (Or I am not
doing it right!).
2) When loading !Larger for the second time in a session, it may take a long
time to start up. This is due to the way *IconSprites works, and may be
changed in later versions. To reduce this problem, use the 'Selective
Sprite Save' option, and only the minimum number of sprites required will
be saved. Without this option set !Larger saves all the sprites it has
seen, and so, ends up with an very large sprite file. (Mine is about
200k).
3) Problems with !Fonts: There are programs availiable now that patch the
Font Manager to allow fast access to Large numbers of fonts. Some of these
programs have fixes in to stop crashing Edit. If one of these is run and
the backdrop is saved, problems may occur when rerun as System variables
will already be set up, and Edit may crash. Not much I can do here until
Acorn release a decent version of !Edit.
4) When the backdrop is saved, all the system variables (except those to do
with !Larger itself, date and time) are saved. If this is a problem, then
simply edit the Obey file in !Larger called 'SysVars' after the save to
remove the offending lines.
5) Some programs (notably !BEdit) cannot be run with an argument. This means
that they do not respond properly if set 'Drag onto'.
6) If the Toggle Size icon in an Edit window is hit, while editing a large
file, Edit may report a 'fatal store error' and crash. This is because of
the way Edit tries to open a window as large as possible, and is not a bug
with !Larger. Hopefully Acorn will fix this in future versions of !Edit.
This error will no longer be given if you have 'Window Size Limit' set.
7) I'm not getting paid for this.
Possible Future Enchancements:
==============================
1) Add option to show position of windows on icon bar icon.
2) Add facility for fixed (non-moving) windows.
3) Selective Sprite Save may be sped up considerably, by bypassing the OS
sprite calls, and copying directly between sprite areas. This method would
reply only on information given in the PRM, so it ought still to be legal.
4) Someone Might Pay me
Changes History:
================
Changes for 1.05:
Fixed bug in (shift-)drag from filer.
Improved !Help response.
Fixed Bug in window scrolling.
Changes for 1.06:
Improved redraw speed.
Added Pre and Post Params Options.
Added Run With option.
Changes for 1.07:
Fixed Redraw Bug for Blank Backdrop.
Added Icon On/Off Option.
Added Large/Small Icon Option.
Increased WimpSlot to 128K
Changes for 1.08:
Added Config window code, and removed large chunks of menu options.
(This halved the time taken to generate the menu :-) )
Fixed bug with moving !Larger windows.
Changes for 1.09:
Corrected Mode change bug introduced in V1.08.
Put in Window Size Limit Option.
Streamlined Internals of proggy, so WimpSlot reduced to 96k.
Changes for 1.10:
Put in No Bounds Option.
Corrected Saving of icon size option.
Put Key Shortcuts in config window.
Corrected Bug with Quitting multiple instantiations of !Larger.
Changes for 1.11:
Added facility to allow drag to filer from backdrop to copy.
Changes for 1.12:
Sped up redraw.
Added selected sprite save option.
Changes for 1.13:
Corrected problem with menu generation.
Changes for 1.14:
Corrected Grabkeys Bug.
Added Rooms Option. (Involved Increasing WimpSlot to 128K :-( )
Put Setup Segment of program as an Overlay - Dumped after Start.
Removed all line number references from within program.
Altered some DIMs to claim space from RMA.
Fixed bug in redraw routine.
Added Follow Caret Option.
Changes for 1.15:
Sped up Selective Sprite Save - See note above.
Put Save/Load into an Overlay, and various Menu Options into another of same
size, so as to save memory.
Changes for 1.16:
Fixed bug in System Variable Saving Routine.
Fixed bug in Selective Sprite Save.
Changes for 1.17:
Fixed bug with discard in Application Window.
Changes for 1.18:
Tidied bug fix for discard.
Extended Ctrl-Tab Functionality.
Fixed bug with No organise, no gravity.
Fixed bug with Details Save.
Changes for 1.19:
Fixed CSD Root problem.
Fixed backdrop to backdrop, non-organise drag bug.
Changes for 1.20:
Updated Room Save Option, to save titles of files in windows.
Changes for 1.21:
Updated Room Save Option, to cope with filer windows.
Changes for 1.22:
Rewrote menu handling routines to give instant menu creation.
Changed functionality of application manager.
Improved redraw on internal swaps.
Chnages for 1.23:
Fixed (Major) bug in Load/Save Room.
Fixed bug in Redraw Routine.
Added Help menu option.
Changes for 1.24:
Fixed Bug in Saving SysVars.
Fixed problem with Caret in Follow Caret/Hide App.
Fixed Quit Error.
Fixed Iconising IconBar Bug.
Fixed Load Room Bug.
Fixed active apps list bug.
Changes for 1.25:
Improved Scroll with Shift mouse rectangle handling.
Changes for 1.26:
Fixed run from backdrop bug.
Fixed Sysvars Saving (Again!)
Fixed bug with FS Vars.
Changes for 1.27:
Fixed bug with follow caret, and non-displayed caret.
Fixed config window click detection bug.
Addresses To Contact the Author:
================================
217 Waterhouse Moor,
Harlow,
Essex,
CM18 6BW
St Catherines College,
Manor Road,
Oxford,
OX1 3UJ
By Janet: m90rjw@uk.ac.oxford.ecs
Thanks Go to:
=============
Brian Brunswick for writing the original Module to Patch the wimp so all
windows are not bounded. His addresses are as follows:
Brian.Brunswick@cl.cam.ac.uk
Trinity College
Cambridge
CB2 1TQ
UK
All my many bugtesters (far too many to name individually).
Rik van der Schalie for writing to me with original code for Selective Sprite
Saving, and other ideas. His address is as follows:
Abrikozenstraat 190
2564 VZ DEN HAAG
Netherlands
Tel: 070-3258675